import LevelBaseControl from "../LevelCommon/LevelBaseControl";
import DialogDataConst from "../../constant/DialogDataConst";
import Sound from "../../constant/SoundNameConstant";

export default class LevelControl2 extends LevelBaseControl{
    //#region room1
    /** 灯光root*/
    private lightRootRoom1:Laya.Sprite3D;
    //#endregion
    protected startByBase(){
        let room1 = this.levelObjRoot.getChildByName("room1") as Laya.Sprite3D;
        this.lightRootRoom1 = room1.getChildByName("lignthRoot") as Laya.Sprite3D;
        this.lightRootRoom1.active = false;
    }

    public  DoInteractObjLogic( _name:string):boolean
    {
        switch (_name)
        {
            /** room1     *********************************************************************************************/
            /** 保险丝 操作开闸*/
            case "fuseSwitchRoom1":
                /** 如果还没通电 就通电*/
                if (!this.lightRootRoom1.active)
                {                    
                    this.lightRootRoom1.active = true;
                    Laya.timer.once(500,this,this.TipFixCir);
                    /** 播放拉闸音*/
                    window.gameFacade.SoundMng.playSound(Sound.soundClipArr.LA_ZHA);
                    return true;
                }
                else
                {
                    return false;
                }
                break;
            /** 煤气灶 聚焦 关灯的时候 不能聚焦*/
            case "GasCookerRoom1":
                /** 如果还没通电*/
                if (!this.lightRootRoom1.active)
                {
                    this.ShowDialog(DialogDataConst.power_up);
                    return false;
                }
                else
                {
                    return true;
                }
                break;
            /** 冰箱聚焦 关灯的时候 不能聚焦*/
            case "Icebox":
                /** 如果还没通电*/
                if (!this.lightRootRoom1.active)
                {
                    this.ShowDialog(DialogDataConst.power_up);
                    return false;
                }
                else
                {
                    return true;
                }
                break;
            /** 通关*/
            case "gateRoom1_In_Gate":
                this.FinishLevel();
                break;
            /** 下层冰箱门 第一次打开 提示 一股腐烂味道*/
            case "checkFridgeGarbage":
                this.ShowDialog(DialogDataConst.fridge_rot);
                break;
            /** round2    *********************************************************************************************/
            default:
                break;
        }
        return true;
    }
    /** 提示修复了电路*/
    private TipFixCir()
    {
        this.ShowDialog(DialogDataConst.open_circuit);
    }
}